package com.design.callback.sync;

import java.util.Random;
/**
 * Store类, 商店提供会无预定消息返回的接口,
 * 回调OrderResult接口的方法,
 * 给其返回预订商品的状态,
 * 重点是returnOrderGoodsInfo(OrderResult order)方法, 体现了回调的回.
 * Store是被调用的一方, 被调用的一方, 要回过去调用调用一方的方法, 这个方法实际上是回调接口的方法.
 * @author Administrator
 *
 */
public class Store {
	private String name;

    Store(String name) {
        this.name = name;
    }

    /*回调函数, 将结构传给那个我们不能直接调用的方法, 然后获取结果*/
    public String returnOrderGoodsInfo(OrderResult order) {
        String[] s = {"订购中...", "订购失败", "即将发货!", "运输途中...", "已在投递"};
        Random random = new Random();
        int temp = random.nextInt(5);
        String s1 = s[temp];
        return order.getOrderResult(s1);
    }

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

}
